package com.yunxi.dao.vehicle;

import com.yunxi.bizToBaseData.pojo.VehicleEngineeringConfig;
import com.yunxi.core.dao.BaseMapperPlus;
import com.yunxi.model.vehicle.VehicleConfig;
import com.yunxi.vehicle.pojo.VehicleConfigFeatureVO;
import java.util.List;

import com.yunxi.vehicle.pojo.VehicleConfigInOutColorQueryReqVO;
import com.yunxi.vehicle.pojo.VehicleConfigInOutColorQueryRespVO;
import org.apache.ibatis.annotations.Param;

public interface VehicleConfigMapper extends BaseMapperPlus<VehicleConfig> {

    List<VehicleConfigFeatureVO> selectConfigFeatureByFamilyCode(String familyCode);

    /**
     * 根据15位码查询 车型默认工程配置
     *
     * @param vehicleCode 15位码
     * @return 工程配置集合
     */
    List<VehicleEngineeringConfig> loadEngineeringConfigByVehicleCode(@Param("vehicleCode") String vehicleCode);

    /**
     * 查询全量工程配置
     *
     * @return 工程配置集合
     */
    List<VehicleEngineeringConfig> loadAllEngineeringConfig();


    List<VehicleConfigInOutColorQueryRespVO> queryVehicleConfigInColorByApp(VehicleConfigInOutColorQueryReqVO vo);

    List<VehicleConfigInOutColorQueryRespVO> queryVehicleConfigOutColorByApp(VehicleConfigInOutColorQueryReqVO vo);

    void callPInitProduct();
}
